<?php
session_cache_limiter("nocache");
//session_start();
require_once('../utilidades/ConexionBD.php');

class SeguridadUsuarioRol {
    
    //--- Atributos
    private $id=0;
    private $fechaGrab;
    private $codUsuario;
    private $codRol;
    
    //--- constructor
    function __construct(){}    
    
    //--- Metodos  
    /*
    public static function selectByCodRol($codRol){
        //---  cargo la informacion desde la BD
        $consulta="select * from \"FuncSeguridadUsuarioRol\"('selectByCodRol',NULL,NULL,NULL,NULL,".$codRol.");";
        //--- Obtengo los datos de postgres
        @$res= pg_query(ConexionBD::get()->conectarse(),$consulta);
        //--- veo si se presento algun error
        if(!$res) {
            return json_encode(array("ERROR"=>str_replace("ERROR:","",pg_last_error(ConexionBD::get()->conectarse()))));                
        }

        //--- Cierro la conexion
        ConexionBD::get()->desconectarse();        
        $list = array();
        while($row = pg_fetch_array($res)) {
            $list[]=array(
                "id"            =>$row["@id"],
                "fechaGrab"     =>$row["@fechaGrab"],
                "codRol"        =>$row["@codRol"],
                "codUsuario"     =>$row["@codusuario"] 
            );            
        }
        return json_encode($list);
    }
    */
    
    public static function selectByCodUsuario($codUsuario){
        //---  cargo la informacion desde la BD
        $consulta="select * from \"FuncSeguridadUsuarioRol\"('selectByCodUsuario',NULL,NULL,NULL,'".$codUsuario."',NULL);";
        //--- Obtengo los datos de postgres
        @$res= pg_query(ConexionBD::get()->conectarse(),$consulta);
        //--- veo si se presento algun error
        if(!$res) {
            return json_encode(array("ERROR"=>str_replace("ERROR:","",pg_last_error(ConexionBD::get()->conectarse()))));                
        }

        //--- Cierro la conexion
        ConexionBD::get()->desconectarse();        
        $list = array();
        while($row = pg_fetch_array($res)) {
            $list[]=array(
                "id"            =>$row["@id"],
                "fechaGrab"     =>$row["@fechaGrab"],
                "codRol"        =>$row["@codRol"],
                "codUsuario"     =>$row["@codusuario"] 
            );            
        }
        return json_encode($list);
    }
    
    public static function insert($usuarioGrab,$codUsuario,$codRol){
        //---  cargo la informacion desde la BD
        $consulta="select * from \"FuncSeguridadUsuarioRol\"('insert',NULL,NULL,NULL,'".$codUsuario."','".$codRol."');";
        //--- Obtengo los datos de postgres
        @$res= pg_query(ConexionBD::get()->conectarse(),$consulta);
        //--- veo si se presento algun error
        if(!$res) {
            return json_encode(array("ERROR"=>str_replace("ERROR:","",pg_last_error(ConexionBD::get()->conectarse()))));                
        }
        ConexionBD::get()->desconectarse();        
        //--- debo retornar el id que se genero al hacer la insercion
        //while($row = pg_fetch_array($res)) {
            //return json_encode(array("id"=>$row["@id"]));
        //}
        //-- retorno sino devolvio un id, retorno cero para que no se generen erroes en la vista
        //return json_encode(array("id"=>"0"));
        return json_encode("");
    }
    
    public static function deleteByCodUsuario($codUsuario){
        //---  cargo la informacion desde la BD
        $consulta="select * from \"FuncSeguridadUsuarioRol\"('deleteByCodUsuario',NULL,NULL,NULL,'".$codUsuario."',NULL);";
        //--- Obtengo los datos de postgres
        @$res= pg_query(ConexionBD::get()->conectarse(),$consulta);
        //--- veo si se presento algun error
        if(!$res) {
            return json_encode(array("ERROR"=>str_replace("ERROR:","",pg_last_error(ConexionBD::get()->conectarse()))));                
        }
        ConexionBD::get()->desconectarse();        
        
       return json_encode("");
    }
}

?>
